Flash memory devices store information by placing charge on a floating gate. For example, single-level cell (SLC) flash devices store binary information in a cell by either programming a level of charge in a cell or leaving it erased. In multi-level cell (MLC) flash devices, multiple bits are stored in a cell by placing one of several possible levels of charge on the cell or leaving it erased. During a read operation, a series of voltage comparisons allows an estimate of charge levels for a particular cell. Each level is associated with a binary pattern. By estimating the charge level, an estimate of the bit pattern for each charge level may be made. In some instances, the threshold voltage for certain cells may be very close to the read levels that were used in the comparison of different levels. In such instances, the estimate for such a case is unreliable. Thus, in order to improve the error rate, it is useful to have not just the bit estimates, but also an indication of the reliability of each estimate. This reliability measure may be called “soft information.”